package com.uam.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.uam.common.exception.CustomException;
import com.uam.db.model.entity.Role;
import com.uam.web.common.model.Result;

import java.util.List;

/**
 * @author uam
 * @create 2023/11/30 20:22
 * @email uam@uam.com
 */
public interface RoleService {
    /**
     * 获取角色列表
     *
     * @return 角色列表
     */
    Result getRole();

    /**
     * 菜单列表
     *
     * @param roleName 角色名称
     * @return 菜单列表
     */
    Result getMenuByRole(String roleName);

    /**
     * 获取角色id
     *
     * @param roleName 角色名称
     * @return 角色id
     */
    Long getRoleIdByRoleName(String roleName);

    /**
     * 配置角色权限
     *
     * @param roleName 权限名称
     * @param menuIds 菜单ID集合
     * @return 返回结果
     */
    Result setRoleMenu(String roleName, List<Long> menuIds);

    /**
     * 新增角色
     * @param roleName 角色名称
     * @return 返回结果
     */
    Result addRole(String roleName);
}
